﻿// 八、函数（方法）部分

// 方法参数练习
// 题目：编写一个方法PrintStudentInfo，接收以下参数：
// string name：学生姓名
// int age：学生年龄
// string major：学生专业（可选参数，默认值为"未指定"）
// params string[] hobbies：学生爱好（可变参数）
// 方法的功能是打印学生的信息，格式如下：
// 学生姓名：[name]
// 学生年龄：[age]
// 学生专业：[major]
// 学生爱好：[hobby1]、[hobby2]、...
// 要求：在主程序中调用该方法，分别传入以下参数：
// 姓名"张三"，年龄20，专业"计算机科学"，爱好"编程"、"阅读"。
// 姓名"李四"，年龄21，爱好"运动"。
// 姓名"王五"，年龄19。
static void PrintStudentInfo(string name, int age, string major = "未指定", params string[]? hobbies)
{
    System.Console.WriteLine($"学生姓名: {name} 学生年龄: {age} 学生专业: {major} 爱好: {string.Join("、", hobbies)}");
}
PrintStudentInfo("张三", 20, "计算机科学", hobbies: ["编程", "阅读"]);
PrintStudentInfo("李四", 21, hobbies: "运动");
PrintStudentInfo("李四", 21);

System.Console.WriteLine("------------------------------------------");

// 方法返回值练习
// 题目：编写一个方法CalculateRectangleArea，接收两个参数double length（长）和double width（宽），返回长方形的面积。
// 然后编写一个方法CalculateRectanglePerimeter，接收同样的两个参数，返回长方形的周长。
// 要求：在主程序中调用这两个方法，分别计算长为5.0、宽为3.0的长方形的面积和周长，并打印结果。
static double CalculateRectangleArea(double length, double width)
{
    return length * width;
}
static double CalculateRectanglePerimeter(double length, double width)
{
    return (length + width) * 2;
}
System.Console.WriteLine("面积: " + CalculateRectangleArea(5.0, 3.0));
System.Console.WriteLine("周长: " + CalculateRectanglePerimeter(5.0, 3.0));

